﻿//using Kele.Activity.Core;
//using MySql.Data.MySqlClient;
//using SqlKata.Compilers;
//using SqlKata.Execution;
//using System;

//namespace Kele.Repository
//{
//    public class QFactory : IDisposable
//    {
//        public QueryFactory Factory { get; }

//        public QFactory()
//        {
//            var connectionString = AppConfig.Setting.DefaultConnectionString;
//            Factory = new QueryFactory(new MySqlConnection(connectionString), new MySqlCompiler());
//            Factory.Logger = compiled =>
//                {
//                    Console.WriteLine(compiled.ToString());
//                };
//        }

//        public void Dispose()
//        {
//            Dispose(true);
//            GC.SuppressFinalize(this);
//        }

//        private bool disposedValue = false; // To detect redundant calls

//        protected virtual void Dispose(bool disposing)
//        {
//            if (!disposedValue)
//            {
//                if (disposing)
//                {
//                    if (this.Factory.Connection != null)
//                    {
//                        this.Factory.Connection.Dispose();
//                        this.Factory.Connection = null;
//                    }
//                }

//                disposedValue = true;
//            }
//        }
//    }
//}